package com.game_info.mapper;

import com.game_info.vo.Users;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * users表Mapper接口
 * 
 * @author ttj
 * @date 2020-04-14
 */
public interface UsersMapper 
{
    /**
     * 根据id查询单个用户
     * 
     * @param uId
     * @return Users
     */
    public Users selectUsersById(Integer uId);

    /**
     * 查询用户列表
     * 
     * @param users
     * @return users集合
     */
    public List<Users> selectUsersList(Users users);

    /**
     * 分页查询
     * @param pagesSize
     * @param startPages
     * @return
     */
    public List<Users> selectUsersLimit(@Param("startPages") Integer startPages, @Param("pagesSize") Integer pagesSize);

    /**
     * 获取全部用户总数
     * @return
     */
    public Integer getUsersCount();

    /**
     * 根据关键词模糊查询全部字段信息
     * @param keyword
     * @return
     */
    public List<Users> selectLikeKeyword(@Param("keyword") String keyword);

    /**
     * 根据用户名查找用户信息
     * @param uName
     * @return
     */
    public Users selectUserByName(@Param("uName") String uName);

    /**
     *根据用户名或者密码查询用户是否存在
     *
     * @param uName
     * @param uPwd
     * @return 查询结果
     */
    public Integer selectUserByIdOrName(@Param("uName") String uName, @Param("uPwd") String uPwd);

    /**
     * 新增
     * 
     * @param users
     * @return 结果
     */
    public int insertUsers(Users users);

    /**
     * 修改
     * 
     * @param users
     * @return 结果
     */
    public int updateUsers(Users users);

    /**
     * 删除
     * 
     * @param uId
     * @return 结果
     */
    public int deleteUsersById(Integer uId);

    /**
     * 批量删除
     * 
     * @param uIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteUsersByIds(String[] uIds);
}
